package mycron

import (
	"github.com/gin-gonic/gin"
	"github.com/robfig/cron/v3"
	"log"
	"ylb/mycron/job"
)

type CronServer struct {
	cron *cron.Cron
}

func StartCronServer(gin *gin.Engine) CronServer {
	cronServer := CronServer{}
	cronServer.initCron()
	if cronServer.cron == nil {
		panic("定时任务初始化失败")

	}
	return cronServer
}
func (cronServer *CronServer) registerCron() {
	//三天发一次,12:30:01发送
	cronServer.cron.AddJob("1 30 12 */3 * *", job.JobCron{})
}
func (cronServer *CronServer) initCron() {
	cronServer.cron = cron.New(cron.WithSeconds())

	cronServer.registerCron()
}
func (cronServer *CronServer) Start() {
	log.Println("[定时任务启动]...")
	cronServer.cron.Start()
}
func (cronServer *CronServer) Stop() {
	cronServer.cron.Stop()
}
